package com.zx;

import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.remoting.common.RemotingHelper;

/**
 * 同步消息
 * @author jack.wu
 * @version 1.0
 * @date 2020-03-10
 */
public class SyncProducer {

    public static void main(String[] args) throws Exception {

        // 实例化生产组名
        DefaultMQProducer producer = new
                DefaultMQProducer("please_rename_unique_group_name");
        // 指定服务器地址
        producer.setNamesrvAddr("localhost:9876");
        // 启动实例
        producer.start();
        for (int i = 0; i < 100; i++) {
            // 创建一个消息实例，指定主题，标签和消息正文
            Message msg = new Message("TopicTest", "TagA" ,
                    ("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET)
            );
            // 呼叫发送消息以将消息传递给其中一个代理。
            SendResult sendResult = producer.send(msg);
            System.out.printf("%s%n", sendResult);
        }
        // 一旦不再使用生产者实例，请关闭.
        producer.shutdown();
    }
}